Dual Package
関連
ライブラリを作成する側の視点
ライブラリをESMとCJSに対応する
パッケージによってはCJSとESMの両方のバージョンを提供している場合があります (Dual Packages)。Native ESM と Fake ESM の違いにより、Dual Packagesも2種類あるので注意が必要です。 Dual Packageの困難
複雑性が上がる
このツールではnpmで公開されている型定義を検査し、問題がないか調べることができます。例えばこのツールはMasquerading as CJSという問題を検出できます。これは、ランタイムにimportで読み込まれるのはESMなのに、型定義はTypeScriptからCommonJSとして認識されるという問題です。主に、package.jsonの書き方が良くないと発生します。